import Vue from 'vue'
import Router from 'vue-router'
import Login from "../views/login/index";
import LoginApi from "../api/login"
import Home from "../views/home/Home"
import {initMenu} from "../utils/menu";
import store from "../store";
import Info from "../views/admin/Info";

Vue.use(Router)

const router = new Router({
  mode:'history',
  routes: [
    {
      path: '/',
      name: 'Login',
      component: Login,
      hidden: true,
    },
    {
      path: '/home',
      name: 'Home',
      component: Home,
      children: [
        {
          path: '/adminInfo',
          name: '个人中心',
          component: Info
        },
      ]
    },


    // {
    //   path: '/employee/EmpAdv',
    //   name: '',
    //   component: EmpAdv
    // },
  ]
})


// 路由导航守卫
// router.beforeEach((to,from,next)=>{
//   if (window.sessionStorage.getItem('token')) {
//     // 初始化菜单栏
//     initMenu(router, store);
//     // 如果不存在用户信息
//     if (!window.sessionStorage.getItem('userInfo')) {
//       console.log("路由导航守卫请求用户数据中");
//       LoginApi.getAdminInfo().then((res) => {
//         console.log("用户信息");
//         console.log(res.data.userFace);
//         if (res) {
//           console.log("存储用户数据中");
//           // 存入用户信息
//           window.sessionStorage.setItem('userInfo',JSON.stringify(res.data));
//           console.log( window.sessionStorage.getItem('userInfo'))
//           next();
//         }
//       })
//     }
//     next();
//   }else {
//     next('/');
//   }
//
// })

router.beforeEach((to, from, next) => {
  if (to.path === '/'){
    next();
  }else{
    if (!(sessionStorage.getItem('token'))){
      next('/');
    }else{
      // 如果有登录信息 则继续获取菜单信息 和用户信息
      console.log("路由导航守卫获取菜单");
      initMenu(router, store) // 侧边栏
      // 如果没有用户数据
      if (!(window.sessionStorage.getItem('userInfo'))){
        LoginApi.getAdminInfo().then((res) => {
        console.log("路由导航守卫获取用户信息");
        console.log(res.data.userFace);
        if (res) {
          console.log("路由导航守卫获取存储用户数据中");
          // 存入用户信息
          sessionStorage.setItem('userInfo',JSON.stringify(res.data));
          store.commit('INIT_ADMIN', res.data)
          }
        })
      }
      next();
    }
  }
});

// router.beforeEach((to, from, next) => {
//   if (window.sessionStorage.getItem('token')){
//     initMenu(router, store)
//     if (!(window.sessionStorage.getItem('userInfo'))){
//       LoginApi.getAdminInfo().then((res) => {
//         console.log("路由导航守卫获取用户信息");
//         console.log(res.data.userFace);
//         if (res) {
//           console.log("路由导航守卫获取存储用户数据中");
//           // 存入用户信息
//           sessionStorage.setItem('userInfo',JSON.stringify(res.data));
//           store.commit('INIT_ADMIN', res.data)
//         }
//       })
//     }
//   next();
//   }else{
//     if (to.path == '/'){
//       next()
//     }else{
//       next('/redirect='+to.path)
//     }
//
//   }
// })

export default router;



